System and method for single action initiation of a video conference

ABSTRACT

A method is provided for configuring a video conference endpoint. The method comprises receiving session data that comprises endpoint connection data for remote endpoints associated with scheduled conferences, and receiving a signal from a user interface indicating a user has activated a control associated with a selected conference, identifying the endpoint connection data for the remote endpoint associated with the selected conference, and establishing a media session with the associated remote endpoint. A video conference endpoint system also is provided. The system comprises a controller coupled to a memory, and a user interface coupled to the controller. The user interface includes a command button associated with a conference. The controller periodically receives session data associated with the scheduled conferences, stores the session data in the memory, and establishes the selected conference in response to a user activating the command button.

RELATED APPLICATIONS

This application claims priority to U.S. Patent Application Ser. No.60/794,016, entitled “VIDEOCONFERENCING SYSTEM,” which was filed on Apr.20, 2006.

TECHNICAL FIELD

This invention relates in general to communication systems, and moreparticularly to a system and method for initiating a video conferencewith a single action.

BACKGROUND

Video conferencing, also known as video teleconferencing, is a form ofvisual collaboration that has existed in some form or another since theintroduction of the television. Primitive forms of video conferencingwere demonstrated with closed circuit television systems using cable.NASA also implemented a primitive form of video conferencing during thefirst manned space flights, using multiple radio links.

Such techniques, however, proved to be too expensive and otherwiseimpractical for more mundane applications, such as business meetings.Video conferencing did not become a viable communication option forthese applications until improvements in bandwidth and compressiontechniques in the 1980s and 1990s enabled practical transmission overdigital networks. Finally, IP-based communication systems emerged as acommon conferencing medium in the late 1990s.

Today, video conferencing applications are spreading throughout thebusiness and healthcare industries, as well as the general public. Theunderlying technology continues to evolve, however, and new processesand systems need to be developed to improve the quality, reliability,and simplicity of this cutting edge communications medium.

SUMMARY

In accordance with the present invention, the disadvantages and problemsassociated with the complexity of video conferencing operations havebeen substantially reduced or eliminated. In particular, particularembodiments facilitate the commercial operation of video conferenceswhile reducing potential interference from technical operations.

In accordance with one embodiment, a method is provided for configuringa video conference endpoint. The method comprises receiving session datathat comprises endpoint connection data for remote endpoints associatedwith scheduled conferences, and receiving a signal from a user interfaceindicating a user has activated a control associated with a selectedconference, identifying the endpoint connection data for the remoteendpoint associated with the selected conference, and establishing amedia session with the associated remote endpoint.

In accordance with another embodiment, a video conference endpointsystem is provided. Such an embodiment comprises a controller coupled toa memory, and a user interface coupled to the controller. The userinterface includes a command button associated with a conferenceselected from a group of scheduled conferences. The controller isoperable to periodically receive session data associated with thescheduled conferences, to store the session data in the memory, and toestablish the selected conference in response to a user activating thecommand button.

An advantage of certain embodiments is a greatly simplified interfacefor conference participants. Moreover, this interface facilitates a moretraditional telephone call paradigm in which a caller initiatescommunication with a remote party, rather than being a passiveparticipant subject to rigid automation processes. These techniques maybe used to ensure that endpoints of a scheduled call, such as complexvideo-conferencing systems, successfully establish a conference. Thesetechniques may further be used to enable individual participants in ascheduled conference to more easily connect to the conference.

Other technical advantages may be readily apparent to one skilled in theart from the following figures, descriptions, and claims. Moreover,while specific advantages have been enumerated above, variousembodiments may include all, some, or none of the enumerated advantages.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and itsadvantages, reference is now made to the following description, taken inconjunction with the accompanying drawings, in which:

FIG. 1 is a simplified block diagram of an example network 10 forexchanging data in accordance with certain teachings of the presentinvention;

FIG. 2 is a simplified diagram of an example embodiment of an endpoint;

FIG. 3 is a sequence diagram that illustrates an example operation ofelements in the network of FIG. 1;

FIG. 4 is a simplified diagram of an example display associated with oneembodiment of a user interface; and

FIG. 5 is a sequence diagram that illustrates an example operation ofelements in the network of FIG. 1.

DETAILED DESCRIPTION

The principles of the present invention may be implemented in a varietyof hardware and software configurations. As is commonly understood inthe art, the structure for implementing the functions described belowmay comprise any appropriately configured data processing hardware,software, process, algorithm, or combination thereof.

Additionally, certain embodiments are described below with reference toan exemplary network of functional elements. Each such functionalelement may represent a hardware device, software, process, or anycombination thereof. A “network” comprises any number of thesefunctional elements coupled to and in communication with each otherthrough a communications medium. A “communications medium” includeswithout limitation any conductive, optical, electromagnetic, or othermedium through which a functional element can transmit data. Unlessotherwise indicated in context below, all network nodes may use publiclyavailable protocols or messaging services to exchange signals, messages,and other forms of electronic communication with each other through anetwork.

Software and data structures associated with certain aspects typicallyare stored in a memory, which may be coupled to a functional elementdirectly or remotely through a network. The term “memory,” as usedherein, includes without limitation any volatile or persistent medium,such as an electrical circuit, magnetic disk, or optical disk, in whicha data or software may be stored for any duration. A single memory mayencompass and be distributed across a plurality of media.

One objective of certain embodiments is to provide video conferenceparticipants a simple-to-use interface that conceals the complexity ofthe system infrastructure. Accordingly, the system and method describedbelow illustrate features and operations of certain embodiments thatenable a conference participant to initiate a video conferencing sessionwith a single action.

The present invention contemplates operation in an environment of aconventional audio and video conferencing system. Certain embodiments,though, are intended to operate in conjunction with conferencingelements designed to provide an experience that simulates a face-to-faceconference. For instance, such elements may comprise one or morehigh-definition screens of sufficient dimensions to display life-sizeimages of conference participants, while audio components providehigh-definition surround sound. Such an experience is referred to hereinas a “telepresence” conference to convey the concept of a conferencingsystem that surpasses the quality and experience of conventional videoconferencing experiences.

FIG. 1 is a simplified block diagram of an example network 10 forexchanging conference data. Network 10 comprises endpoints 12 managed bya call management agent 14. A telepresence manager (TPM) 16 also iscoupled to call management agent 14. Conference data 18 is stored in amemory coupled to TPM 16. Group scheduler 20 and associated directorydata 22 are coupled to TPM 16 through network 10.

Call management agent 14 represents any communication platform that mayimplement various IP signaling protocols and functions. In general, acall management agent is an intermediary element that establishessessions and facilitates dialogs between endpoints. A call managementagent also may receive requests from endpoints and determine how therequests should be answered. Thus, a call management agent also mayserve as an endpoint in a communication system or network. A callmanagement agent generally maintains dialog state and participates inall requests sent in dialogs that it has established, allowing it toprovide some advanced calling features to endpoints. In a particularembodiment, call management agent 14 is a call management agent that ismanufactured and marketed as “Cisco Call Manager” by Cisco Systems, Inc.of San Jose, Calif.

TPM 16 represents any communication platform that may implementfunctions for tracking conference schedules and interfacing with a callmanagement agent to manage endpoint resource needed to support theconference schedules. In a particular embodiment, TPM 16 is acommunication platform manufactured and marketed as “Cisco TelepresenceManager” by Cisco Systems, Inc. Conference data 18 represents the dataassociated with the conference schedules and, particularly, the dataassociated with endpoints 12 needed to support the conference schedules.Conference data 16 may include endpoint identifiers (“IDs”), endpointconnection data, conference time, conference organizer, conferencesubject, and other attributes. Endpoint connection data comprises anydata necessary to establish a session with a given endpoint, such as anextension, directory number, IP address, or fully qualified number(FQN). Endpoint connection data may further include additional data,such as conference identifiers, authentication and authorization data(e.g., passcodes, administrator codes), extra digits to dial,pre-recorded participant identifiers, or other appropriate data forestablishing a connection and initiating or joining a conference.

In one embodiment, TPM 16 does not directly track conference schedules.Rather, TPM 16 subscribes to group scheduler 20, which tracks conferenceschedules and notifies TPM 16 of new, modified, or deleted conferences.Group scheduler 20 represents any functional element that facilitatesgroup collaboration, scheduling, and organizational communications.Examples of contemporary group schedulers include, without limitation,MICROSOFT OUTLOOK and EXCHANGE, LOTUS NOTES, ORACLE, YAHOO! Calendar,GOOGLE Calendar, and NETSCAPE COMMUNICATOR. Directory data 22 representsdata associated with the group collaboration, scheduling, andorganizational communications. In general, directory data 22 andconference data 18 are not coextensive. Rather, directory data 22 isbroader in scope and conference data 22 is extracted from directory data22 as needed to support the operations of TPM 16. For instance,directory data 22 may include extensive contact information associatedwith conference participants (and other individuals), which is notassociated with any endpoint needed to support the conference schedules.

Endpoints 12 represent functional elements that originate or terminatemedia, such as voice and video. An endpoint can call other endpoints,and may be called by other endpoints. An endpoint may implement one ormore signaling and session protocols to implement these functions.Accordingly, an endpoint may be viewed as an H.323 terminal, H.323gateway, SIP user agent (UA), or other appropriate system elementdepending on the perspective of a given protocol or system architecture.From the perspective of call management agent 14, TPM 16 also may beviewed as an endpoint to the extent that it leverages signaling andsession protocols to implement its functions.

According to particular embodiments, these concepts may be applied toreduce the interaction required for individual participants in ascheduled conference. In these embodiments, TPM 16 may push conferenceinformation to a single endpoint associated with a user scheduled toparticipate in a conference. For example, TPM 16 may push conferenceinformation, including endpoint connection data, to a desktop or otherdevice associated with a particular user scheduled to participate in aconference.

FIG. 2 is a simplified diagram of an example embodiment of an endpoint.The functional elements of an endpoint as illustrated include, withoutlimitation, conference display 24, controller 26, session data 28, anduser interface 30. Typically, an endpoint further includes an elementfor video input (e.g., a camera), audio input (e.g., a microphone), andaudio output (e.g., speakers). Conference display 24 represents anyvideo output element operable to display images of conferenceparticipants, while user interface 30 represents any functional elementoperable to interact with an end-user (particularly a conferenceparticipant).

As depicted in FIG. 2, one embodiment of user interface 30 may be atelephone device, particularly a telephone device that supports IP-basedsignaling and session protocols. User interface 30 also may include adisplay of scheduled conferences and associated attributes stored insession data 28. Generally, session data 28 and conference data 18 arenot coextensive, and session data 28 typically represents only a sub-setof conference data 18. In general, session data 28 comprises onlyconference data associated with a configurable time period, and mayfurther be limited to only attributes needed for establishing mediasessions (e.g., endpoint connection data) and displaying a limitedschedule to system users.

Controller 26 represents any functional element operable to communicatewith other elements of network 10 to perform tasks such as retrievingsession data 28 from TPM 16, storing session data 28 in a memory, andestablishing media sessions using call management agent 14. In certainembodiments, controller 26 also controls the behavior of user interface30 and receives user input from user interface 30. Controller 26 mayfurther comprise a codec, which is any functional element operable tocompress/decompress media streams associated with a conference.

FIG. 3 is a sequence diagram that illustrates an example operation ofelements in network 10. This operation presumes that an administratorhas configured endpoints 12, call management agent 14, and groupscheduler 20, so that endpoints 12 each have an associated endpoint IDknown to call management agent 14 and group scheduler 20. Moreover, thisexample further presumes that at least one conference participant hasused group scheduler 20 to schedule a conference requiring an endpoint12, so that directory data 22 includes the relevant endpoint ID,conference time, contact data, and other relevant attributes. Finally,this operation presumes that TPM 16 is aware of endpoints 12 and theirrespective endpoint IDS.

In step 100, TPM 16 subscribes to group scheduler 20 and requestsdirectory data associated with the endpoint IDs. If group schedulerrecognizes the endpoint IDs, group scheduler returns the associateddirectory data to TPM 16 in step 102. TPM 16 then extracts conferencedata 18 from the associated directory data and stores conference data 18(step 104). Group scheduler 20 subsequently notifies TPM 16 of any new,modified, or deleted conferences, and TPM 16, in turn, updatesconference data 18 as needed. In steps 106, TPM 16 extracts session data28 from conference data 18 and pushes session data 28 to controller 26associated with endpoint 12. Controller 26 then stores session data 28in a memory (step 110). Finally, in step 112, controller 26 extracts andpushes display data to user interface 30. Display data generallycomprises session data associated with a limited time period, includingconference objects. Conference objects comprise descriptive attributesassociated with a given conference, such as a subject, the organizer (orother contact information), and relevant scheduling data.

FIG. 4 is a simplified diagram of an example display associated with oneembodiment of a user interface 30. Display 32 is representative of adisplay as it would appear after the example operation of FIG. 3, inwhich controller 26 has pushed display data to user interface 30.Display 32 comprises a limited conference schedule 34. Conferenceschedule 34 comprises user-selectable conference elements 36 thatdisplay descriptive attributes of a given conference object. Display 32further comprises one or more controls that activate associatedprocesses. In display 32, such a control is represented as a commandbutton 38 and labeled “LAUNCH.” The label “LAUNCH” is used merely toidentify the button, and any term or image that signifies such activity,including but not limited to international symbols and forms of the wordmeaning to launch or place a call could be substituted for the term“LAUNCH”. Command button 38 may be, for example, a “soft key” associatedwith a portion of display 32 in which selected conference information isdisplayed. In one embodiment, this control is associated with a processthat establishes a video conference session with a remote endpoint asdescribed below with reference to FIG. 5.

In operation, user interface 30 receives conference information for atleast one upcoming conference and may present selected portions of thisinformation using display 32, for example, at some predetermined timeprior to the scheduled conference. Based on user preferences or othersuitable data, user interface 30 may display varying portions ofconference information. For example, if a user marks a conference asprivate or secure, user interface 30 may display a limited set ofinformation as compared with typical conferences.

If a scheduled conference is not initiated within some preset period oftime, if network 10 detects that an associated user has joined thescheduled conference from some other location, or for other suitablereasons, user interface 30 may remove conference information fromdisplay 32. For example, at a predetermined period of time after thescheduled beginning or ending of a scheduled conference, user interface30 may remove conference information from display 32.

According to particular embodiments, endpoint 12 may employ securityprotocols to prevent unauthorized access and use of system to join ascheduled conference. Such security protocols may include any suitablemeasures, such as personal identification codes associated with thescheduled user, proximity detection of scheduled participants usingradio frequency identification, or any other suitable techniques forauthorizing access to the launch of the scheduled conference.

FIG. 5 is a sequence diagram that illustrates an example operation ofelements in network 10 to launch a scheduled conference. In certainembodiments, this operation is activated in response to a signal ormessage from user interface 30 indicating that a user has activated anassociated command button (step 114). The signal also indicates that auser has selected a particular conference element before activating theassociated command button. Upon receiving the signal from user interface30, controller 26 identifies the conference object associated with theselected conference element (step 116) and the remote endpoint 12associated with the conference object (step 118). Controller 26 thenextracts the contact data associated with the remote endpoint 12 (step120), and establishes a media session with remote endpoint 12 (step 122)using call management agent 14. In appropriate circumstances, controller26 may use administrative data to establish or join a conference.Administrative data generally includes supplemental informationnecessary for a session that is not generally available to conferenceparticipants. For example, controller 26 may send extra digits,passcodes, administrator codes, pre-recorded messages, or otherappropriate information to facilitate a conference.

Although the present invention has been described with at least onespecific embodiment, a myriad of changes, variations, alterations,transformations, and modifications may be suggested to one skilled inthe art, and it is intended that the present invention encompass suchchanges, variations, alterations, transformations, and modifications asfall within the scope of the appended claims.

For instance, other embodiments are contemplated in which the userinterface described above may be integrated with a radio frequency orelectronic identification system such that a video conference may beactivated upon detection and verification of a particular conferenceparticipant, without direct action by the participant. Moreover,security mechanisms and other policies may be integrated with theembodiments described above to prevent fraudulent or unauthorized use ofsuch a embodiments.

In yet another embodiment, multiple video conferencing endpoints may beconfigured. For example, data may be received for a common connectiondestination, such as a video switch, and a signal from each userinterface associated with each video conferencing endpoint may bereceived indicating that a user at each location has activated a controlassociated with a selected conference. The connection date may beidentified for the common connection destination and a media sessionestablished with that associated common connection device.

1. A telepresence system comprising: a telepresence manager coupled to a first memory and a group scheduler; and a controller coupled to the telepresence manager and a second memory; and a user interface coupled to the controller, the user interface having a command button associated with a telepresence conference selected from a group of scheduled telepresence conferences; wherein the telepresence manager is operable to retrieve directory data associated with the scheduled telepresence conferences from the group scheduler, to extract conference data from the directory data, to store the conference data in the first memory, to extract session data from the conference data, and to exchange the session data with the controller; and wherein the controller is operable to receive the session data from the telepresence manager periodically, to store the received session data in the second memory, and to access the received session data to establish the selected telepresence conference in response to a user activating the command button.
 2. The telepresence system of claim 1, wherein the user interface is operable to receive display data from the controller and to display a list of the scheduled telepresence conferences associated with the display data, wherein the display data is limited to session data associated with a configurable time period, and wherein the selected telepresence conference is selected from the list by the user.
 3. The telepresence system of claim 1, wherein the session data comprises a remote endpoint identifier associated with each of the scheduled telepresence conferences, and connection data associated with each remote endpoint identifier; and wherein the controller uses the connection data to establish the selected telepresence conference with a remote endpoint associated with the remote endpoint identifier.
 4. The telepresence system of claim 1, wherein the user interface is operable to receive display data from the controller and to display a list of the scheduled telepresence conferences associated with the display data, wherein the display data is limited to session data associated with a configurable time period, and wherein the selected telepresence conference is selected from the list by the user; and wherein the session data comprises a remote endpoint identifier associated with each of the scheduled telepresence conferences, and connection data associated with each remote endpoint identifier; and wherein the controller uses the connection data to establish the selected telepresence conference with a remote endpoint associated with the remote endpoint identifier. 